package com.crm.incoming.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 我的审件对象 cust_incoming_info
 * 
 * @author ruoyi
 * @date 2024-02-03
 */
public class CustIncomingInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long id;

    /** 客户ID */
    @Excel(name = "客户ID")
    private Long custId;

    /** 客户姓名 */
    @Excel(name = "客户姓名")
    private String custName;

    /** 单件类型 1-房抵贷 2-车抵贷 3-信用贷 */
    @Excel(name = "单件类型 1-房抵贷 2-车抵贷 3-信用贷")
    private String incomingType;

    /** 进件银行 */
    @Excel(name = "进件银行")
    private String incomingBank;

    /** 银行客户经理 */
    @Excel(name = "银行客户经理")
    private String incomingAdviser;

    /** 付费方式 0-代扣 1-现金 */
    @Excel(name = "付费方式 0-代扣 1-现金")
    private String payType;

    /** 进件额度（元） */
    @Excel(name = "进件额度", readConverterExp = "元=")
    private BigDecimal incomingAmount;

    /** 费率/% */
    @Excel(name = "费率/%")
    private BigDecimal incomingRate;

    /** 诚意金（元） */
    @Excel(name = "诚意金", readConverterExp = "元=")
    private BigDecimal sincAmount;

    /** 进件日期 */
    @Excel(name = "进件日期")
    private String incomingDate;

    /** 批款额度（元） */
    @Excel(name = "批款额度", readConverterExp = "元=")
    private BigDecimal approveAmount;

    /** 收款额（元） */
    @Excel(name = "收款额", readConverterExp = "元=")
    private BigDecimal receiveAmount;

    /** 收款银行 */
    @Excel(name = "收款银行")
    private String receiveBank;

    /** 收款日期 */
    @Excel(name = "收款日期")
    private String receiveDate;

    /** 成本费（元） */
    @Excel(name = "成本费", readConverterExp = "元=")
    private BigDecimal costAmount;

    /** 净创收（元） */
    @Excel(name = "净创收", readConverterExp = "元=")
    private BigDecimal createAmount;

    /** 贷款顾问ID */
    @Excel(name = "贷款顾问ID")
    private Long empId;

    /** 贷款顾问姓名 */
    @Excel(name = "贷款顾问姓名")
    private String empName;

    /** 部门ID */
    @Excel(name = "部门ID")
    private Long orgId;

    /** 部门名称 */
    @Excel(name = "部门名称")
    private String orgName;

    /** 确认人ID */
    @Excel(name = "确认人ID")
    private Long approveEmpId;

    /** 确认人姓名 */
    @Excel(name = "确认人姓名")
    private String approveEmpName;

    /** 确认时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "确认时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date approveTime;

    /** 合同号 */
    @Excel(name = "合同号")
    private String contractNo;

    /** 合同照片 */
    @Excel(name = "合同照片")
    private String contractImage;

    /** 进度 1-审核中 2-已放款 3-已拒件 4-违约 5-归档 */
    @Excel(name = "进度 1-审核中 2-已放款 3-已拒件 4-违约 5-归档")
    private String status;

    /** 还款期限 */
    @Excel(name = "还款期限")
    private Long repaymentPeriod;

    /** 每月还款时间 */
    @Excel(name = "每月还款时间")
    private Long repaymentTime;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long introduceCustId;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String introduceCustName;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setCustId(Long custId) 
    {
        this.custId = custId;
    }

    public Long getCustId() 
    {
        return custId;
    }
    public void setCustName(String custName) 
    {
        this.custName = custName;
    }

    public String getCustName() 
    {
        return custName;
    }
    public void setIncomingType(String incomingType) 
    {
        this.incomingType = incomingType;
    }

    public String getIncomingType() 
    {
        return incomingType;
    }
    public void setIncomingBank(String incomingBank) 
    {
        this.incomingBank = incomingBank;
    }

    public String getIncomingBank() 
    {
        return incomingBank;
    }
    public void setIncomingAdviser(String incomingAdviser) 
    {
        this.incomingAdviser = incomingAdviser;
    }

    public String getIncomingAdviser() 
    {
        return incomingAdviser;
    }
    public void setPayType(String payType) 
    {
        this.payType = payType;
    }

    public String getPayType() 
    {
        return payType;
    }
    public void setIncomingAmount(BigDecimal incomingAmount) 
    {
        this.incomingAmount = incomingAmount;
    }

    public BigDecimal getIncomingAmount() 
    {
        return incomingAmount;
    }
    public void setIncomingRate(BigDecimal incomingRate) 
    {
        this.incomingRate = incomingRate;
    }

    public BigDecimal getIncomingRate() 
    {
        return incomingRate;
    }
    public void setSincAmount(BigDecimal sincAmount) 
    {
        this.sincAmount = sincAmount;
    }

    public BigDecimal getSincAmount() 
    {
        return sincAmount;
    }
    public void setIncomingDate(String incomingDate) 
    {
        this.incomingDate = incomingDate;
    }

    public String getIncomingDate() 
    {
        return incomingDate;
    }
    public void setApproveAmount(BigDecimal approveAmount) 
    {
        this.approveAmount = approveAmount;
    }

    public BigDecimal getApproveAmount() 
    {
        return approveAmount;
    }
    public void setReceiveAmount(BigDecimal receiveAmount) 
    {
        this.receiveAmount = receiveAmount;
    }

    public BigDecimal getReceiveAmount() 
    {
        return receiveAmount;
    }
    public void setReceiveBank(String receiveBank) 
    {
        this.receiveBank = receiveBank;
    }

    public String getReceiveBank() 
    {
        return receiveBank;
    }
    public void setReceiveDate(String receiveDate) 
    {
        this.receiveDate = receiveDate;
    }

    public String getReceiveDate() 
    {
        return receiveDate;
    }
    public void setCostAmount(BigDecimal costAmount) 
    {
        this.costAmount = costAmount;
    }

    public BigDecimal getCostAmount() 
    {
        return costAmount;
    }
    public void setCreateAmount(BigDecimal createAmount) 
    {
        this.createAmount = createAmount;
    }

    public BigDecimal getCreateAmount() 
    {
        return createAmount;
    }
    public void setEmpId(Long empId) 
    {
        this.empId = empId;
    }

    public Long getEmpId() 
    {
        return empId;
    }
    public void setEmpName(String empName) 
    {
        this.empName = empName;
    }

    public String getEmpName() 
    {
        return empName;
    }
    public void setOrgId(Long orgId) 
    {
        this.orgId = orgId;
    }

    public Long getOrgId() 
    {
        return orgId;
    }
    public void setOrgName(String orgName) 
    {
        this.orgName = orgName;
    }

    public String getOrgName() 
    {
        return orgName;
    }
    public void setApproveEmpId(Long approveEmpId) 
    {
        this.approveEmpId = approveEmpId;
    }

    public Long getApproveEmpId() 
    {
        return approveEmpId;
    }
    public void setApproveEmpName(String approveEmpName) 
    {
        this.approveEmpName = approveEmpName;
    }

    public String getApproveEmpName() 
    {
        return approveEmpName;
    }
    public void setApproveTime(Date approveTime) 
    {
        this.approveTime = approveTime;
    }

    public Date getApproveTime() 
    {
        return approveTime;
    }
    public void setContractNo(String contractNo) 
    {
        this.contractNo = contractNo;
    }

    public String getContractNo() 
    {
        return contractNo;
    }
    public void setContractImage(String contractImage) 
    {
        this.contractImage = contractImage;
    }

    public String getContractImage() 
    {
        return contractImage;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setRepaymentPeriod(Long repaymentPeriod) 
    {
        this.repaymentPeriod = repaymentPeriod;
    }

    public Long getRepaymentPeriod() 
    {
        return repaymentPeriod;
    }
    public void setRepaymentTime(Long repaymentTime) 
    {
        this.repaymentTime = repaymentTime;
    }

    public Long getRepaymentTime() 
    {
        return repaymentTime;
    }
    public void setIntroduceCustId(Long introduceCustId) 
    {
        this.introduceCustId = introduceCustId;
    }

    public Long getIntroduceCustId() 
    {
        return introduceCustId;
    }
    public void setIntroduceCustName(String introduceCustName) 
    {
        this.introduceCustName = introduceCustName;
    }

    public String getIntroduceCustName() 
    {
        return introduceCustName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("custId", getCustId())
            .append("custName", getCustName())
            .append("incomingType", getIncomingType())
            .append("incomingBank", getIncomingBank())
            .append("incomingAdviser", getIncomingAdviser())
            .append("payType", getPayType())
            .append("incomingAmount", getIncomingAmount())
            .append("incomingRate", getIncomingRate())
            .append("sincAmount", getSincAmount())
            .append("incomingDate", getIncomingDate())
            .append("approveAmount", getApproveAmount())
            .append("receiveAmount", getReceiveAmount())
            .append("receiveBank", getReceiveBank())
            .append("receiveDate", getReceiveDate())
            .append("costAmount", getCostAmount())
            .append("createAmount", getCreateAmount())
            .append("empId", getEmpId())
            .append("empName", getEmpName())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("orgId", getOrgId())
            .append("orgName", getOrgName())
            .append("approveEmpId", getApproveEmpId())
            .append("approveEmpName", getApproveEmpName())
            .append("approveTime", getApproveTime())
            .append("contractNo", getContractNo())
            .append("contractImage", getContractImage())
            .append("remark", getRemark())
            .append("status", getStatus())
            .append("repaymentPeriod", getRepaymentPeriod())
            .append("repaymentTime", getRepaymentTime())
            .append("introduceCustId", getIntroduceCustId())
            .append("introduceCustName", getIntroduceCustName())
            .toString();
    }
}
